aboutsummaryrefslogtreecommitdiff
path: root/drivers/isdn
diff options
context:
space:
mode:
authorPetr Vandrovec <petr@vandrovec.name>2007-05-07 04:14:47 +0200
committerStefan Richter <stefanr@s5r6.in-berlin.de>2007-07-10 00:07:37 +0200
commit883b97eaf2a3fba7628f9f78ca7dc422aaf9728b (patch)
treed7e4c1e569e29125f07380d8815b1706b8fb1a76 /drivers/isdn
parentee9be425961c3ccf75553c83a73bf1f707e66d91 (diff)
ieee1394: raw1394: Fix write() for 32bit userland on 64bit kernel
* write(fd, buf, 52) from 32bit app was returning 56. Most of callers did not care, but some (arm registration) did, and anyway it looks bad if request for writing 52 bytes returns 56. And returning sizeof anything in 'int' is not good as well. So all functions now return '0' instead of sizeof(struct raw1394_request) on success, and write() itself provides correct return value (it just returns value it was asked to write on success as raw1394 does not do any partial writes at all). * Related to this was problem that write() could have returned 0 when kernel state would become corrupted and moved to different state than opened/initialized/connected. Now it returns -EBADFD which seemed appropriate. Signed-off-by: Petr Vandrovec <petr@vandrovec.name> Acked-by: Dan Dennedy <dan@dennedy.org> Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de> (split into 3 patches)
Diffstat (limited to 'drivers/isdn')
0 files changed, 0 insertions, 0 deletions