public
/
FUZIX.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
9f3642d
)
devio: d_flush of a flush incapable device is not an error
author
Alan Cox
<alan@linux.intel.com>
Fri, 15 May 2015 23:31:38 +0000
(
00:31
+0100)
committer
Alan Cox
<alan@linux.intel.com>
Fri, 15 May 2015 23:31:38 +0000
(
00:31
+0100)
Fixes mount, mkdir and other odd failures
Kernel/devio.c
patch
|
blob
|
history
diff --git
a/Kernel/devio.c
b/Kernel/devio.c
index
282bde3
..
6eed647
100644
(file)
--- a/
Kernel/devio.c
+++ b/
Kernel/devio.c
@@
-280,9
+280,14
@@
int d_ioctl(uint16_t dev, uint16_t request, char *data)
int d_flush(uint16_t dev)
{
- if (!validdev(dev))
- panic("d_flush: bad device");
- return (*dev_tab[major(dev)].dev_ioctl) (minor(dev), BLKFLSBUF, 0);
+ /* Not as clean as would be ideal : FIXME */
+ int r = d_ioctl(dev, BLKFLSBUF, 0);
+ /* Not knowing the ioctl is not an offence */
+ if (r && udata.u_error == ENOTTY) {
+ udata.u_error = 0;
+ r = 0;
+ }
+ return r;
}
/*