search for: eio

Displaying 20 results from an estimated 1272 matches for "eio".

2009 Apr 17
1
[PATCH 1/1] OCFS2: Log -EIO errors just when hit them.
This patch logs(ERROR) -EIO errors just when they are hitted. Signed-off-by: Wengang Wang <wen.gang.wang at oracle.com> -- diff -up ./linux-2.6.29.y.build/fs/ocfs2/buffer_head_io.c.orig ./linux-2.6.29.y.build/fs/ocfs2/buffer_head_io.c --- ./linux-2.6.29.y.build/fs/ocfs2/buffer_head_io.c.orig 2009-04-17 13:55:52.0000000...
2020 Jun 16
2
[PATCH v2 1/1] s390: virtio: let arch accept devices without IOMMU feature
...tures(struct virtio_device *dev) > >> if (!virtio_has_feature(dev, VIRTIO_F_VERSION_1)) > >> return 0; > >> > >> + if (arch_needs_iommu_platform(dev) && > >> + !virtio_has_feature(dev, VIRTIO_F_IOMMU_PLATFORM)) > >> + return -EIO; > >> + > > > > Why EIO? > > Because I/O can not occur correctly? > I am open to suggestions. We use -ENODEV if feature when the device rejects the features we tried to negotiate (see virtio_finalize_features()) and -EINVAL when the F_VERSION_1 and the virtio-cc...
2020 Jun 16
2
[PATCH v2 1/1] s390: virtio: let arch accept devices without IOMMU feature
...tures(struct virtio_device *dev) > >> if (!virtio_has_feature(dev, VIRTIO_F_VERSION_1)) > >> return 0; > >> > >> + if (arch_needs_iommu_platform(dev) && > >> + !virtio_has_feature(dev, VIRTIO_F_IOMMU_PLATFORM)) > >> + return -EIO; > >> + > > > > Why EIO? > > Because I/O can not occur correctly? > I am open to suggestions. We use -ENODEV if feature when the device rejects the features we tried to negotiate (see virtio_finalize_features()) and -EINVAL when the F_VERSION_1 and the virtio-cc...
2004 May 10
0
EIO vs. ENOENT on disk failure
...e got a filesystem-based JBOD setup. During testing, I failed out one of the drives and tried to access the filesystem on it. Here are the results I got: stat /disk succeeds open /disk for reading succeeds readdir (getdents) for /disk fails EIO open /disk/noexist for reading fails ENOENT open /disk/noexist for writing fails EIO open /disk/exists for reading fails ENOENT open /disk/exit for writing fails EIO open /disk/subdir/noexist for reading fails ENOENT open /disk/subdir/noexist for writing...
2018 Jul 27
4
[PATCH] file: Fix zero/trim with block device
...errno != EOPNOTSUPP && errno != ENODEV) { nbdkit_error ("zero: %m"); } #else @@ -288,11 +288,11 @@ file_trim (void *handle, uint32_t count, uint64_t offset) struct handle *h = handle; /* Trim is advisory; we don't care if it fails for anything other - * than EIO or EPERM. */ + * than EIO, EPERM, or ENODEV (kernel 3.10) */ r = fallocate (h->fd, FALLOC_FL_PUNCH_HOLE | FALLOC_FL_KEEP_SIZE, offset, count); if (r < 0) { - if (errno != EPERM && errno != EIO) { + if (errno != EPERM && errno != EIO && e...
2020 Jun 16
1
[PATCH v2 1/1] s390: virtio: let arch accept devices without IOMMU feature
...>> if (!virtio_has_feature(dev, VIRTIO_F_VERSION_1)) >>>>> return 0; >>>>> >>>>> + if (arch_needs_iommu_platform(dev) && >>>>> + !virtio_has_feature(dev, VIRTIO_F_IOMMU_PLATFORM)) >>>>> + return -EIO; >>>>> + >>>> >>>> Why EIO? >>> >>> Because I/O can not occur correctly? >>> I am open to suggestions. >> >> We use -ENODEV if feature when the device rejects the features we >> tried to negotiate (see virtio_finali...
2011 Aug 21
2
Fixing split brain
Hi Consider the typical spit brain situation: reading from file gets EIO, logs say: [2011-08-21 13:38:54.607590] W [afr-open.c:168:afr_open] 0-gfs-replicate-0: failed to open as split brain seen, returning EIO [2011-08-21 13:38:54.607895] W [fuse-bridge.c:585:fuse_fd_cbk] 0-glusterfs-fuse: 1371456: OPEN() /manu/netbsd/usr/src/gnu/dist/groff/doc/Makefile.sub =...
2004 Jun 06
1
[PATCH] use sb_getblk
...==================== --- src/super.c (revision 1014) +++ src/super.c (working copy) @@ -799,7 +799,7 @@ /* get first two blocks */ for (i=0; i<2; i++) { - bhs[i] = getblk (OCFS_GET_BLOCKDEV(sb), i, 512); + bhs[i] = sb_getblk(sb, i); if (bhs[i] == NULL) { LOG_ERROR_STATUS(status = -EIO); goto leave; Index: src/journal.c =================================================================== --- src/journal.c (revision 1014) +++ src/journal.c (working copy) @@ -583,8 +583,7 @@ * turned off later. */ LOG_ERROR_ARGS("block %lu was modified but never "...
2009 Jul 13
1
[PATCH 1/1] fails ocfs2_get_block() immediately when hit -EIO
fails ocfs2_get_block() immediately when hit -EIO Signed-off-by: Wengang Wang <wen.gang.wang at oracle.com> --- fs/ocfs2/aops.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/fs/ocfs2/aops.c b/fs/ocfs2/aops.c index a10c989..9dfdf46 100644 --- a/fs/ocfs2/aops.c +++ b/fs/ocfs2/aops.c @@ -195,6 +195,7 @@ static int o...
2019 Jul 02
1
[nbdkit PATCH] sh: Parse a larger number of error messages
In order to trigger a non-EIO failure, a script had to output _exactly_ 'EINVAL ' or similar, with one trailing space and no message, because we forgot to limit the length of the string comparison. Fix things to tolerate an error name without a message, as well as to be case-insensitive. Also, parse EOVERFLOW (missed i...
2017 Jan 26
0
[nbdkit PATCH v2 4/6] plugins: Add new nbdkit_set_error() utility function
...ions.c @@ -602,6 +602,19 @@ validate_request (struct connection *conn, return 1; /* Commands validates. */ } +/* Grab the appropriate error value. + */ +static int +_get_error (void) +{ + int err = errno; + int ret = tls_get_error (); + + if (!ret) + ret = err ? err : EIO; + return ret; +} + /* This is called with the request lock held to actually execute the * request (by calling the plugin). Note that the request fields have * been validated already in 'validate_request' so we don't have to @@ -611,7 +624,8 @@ validate_request (struct connection...
2020 Apr 01
2
Re: [nbdkit PATCH] retry: Tweak error message
...ect --filter=delay rdelay=1 \ >> --run 'qemu-img convert $nbd out.img' >> ... >> nbdkit: null[1]: debug: noextents: pread count=2097152 offset=14680064 >> nbdkit: null[1]: debug: error: pread count=2097152 offset=14680064 >> nbdkit: null[1]: error: injecting EIO error into pread >> nbdkit: null[1]: debug: retry 6: original errno = 5 >> nbdkit: null[1]: debug: could not recover after 5 retries >> >> again: >> /* Log the original errno since it will be lost when we retry. */ >> - nbdkit_debug ("retry %d: orig...
2015 Nov 07
3
Re: mkfs.ext2 succeeds despite nbd write errors?
...0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 32768, 8187412480) = 32768 pwrite(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 32768, 8187445248) = 32768 ... root@debian:~# cat strace.out | grep fsync fsync(3) = -1 EIO (Input/output error) fsync(3) = -1 EIO (Input/output error) The fsync() calls happen just before mkfs exists success: root@debian:~# cat strace.out | tail pwrite(3, "\1\2\0\0\2\2\0\0\3\2\0\0\367{\365\37\2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096, 65766727...
2015 Jan 16
3
PXE Error Reporting
...nel or initrd. > [...] > > The (almost untested) patch below should fix this. hmm, probably close but I still get the same "No such file or directory" error message. Also, should error codes other than 1 (File not found) and 2 (Access violation) not be mapped to something like EIO and not ENOENT? Thanks, Andreas
2018 Jul 28
1
Re: [PATCH] file: Fix zero/trim with block device
...manual > fallbacks? You may need to explicitly set errno. > > >@@ -288,11 +288,11 @@ file_trim (void *handle, uint32_t count, uint64_t offset) > > struct handle *h = handle; > > /* Trim is advisory; we don't care if it fails for anything other > >- * than EIO or EPERM. */ > >+ * than EIO, EPERM, or ENODEV (kernel 3.10) */ > > r = fallocate (h->fd, FALLOC_FL_PUNCH_HOLE | FALLOC_FL_KEEP_SIZE, > > offset, count); > > if (r < 0) { > >- if (errno != EPERM && errno != EIO) { > >+...
2018 Jul 30
3
[PATCH v2] file: Normalize errno value for ENODEV
...+ if (r == -1 && errno != EOPNOTSUPP) { nbdkit_error ("zero: %m"); } #else @@ -288,11 +303,11 @@ file_trim (void *handle, uint32_t count, uint64_t offset) struct handle *h = handle; /* Trim is advisory; we don't care if it fails for anything other - * than EIO, EPERM, or ENODEV (kernel 3.10) */ - r = fallocate (h->fd, FALLOC_FL_PUNCH_HOLE | FALLOC_FL_KEEP_SIZE, - offset, count); + * than EIO or EPERM. */ + r = do_fallocate (h->fd, FALLOC_FL_PUNCH_HOLE | FALLOC_FL_KEEP_SIZE, + offset, count); if (r < 0) {...
2011 Oct 12
33
weird bug with Seagate 3TB USB3 drive
Banging my head against a Seagate 3TB USB3 drive. Its marketing name is: Seagate Expansion 3 TB USB 3.0 Desktop External Hard Drive STAY3000102 format(1M) shows it identify itself as: Seagate-External-SG11-2.73TB Under both Solaris 10 and Solaris 11x, I receive the evil message: | I/O request is not aligned with 4096 disk sector size. | It is handled through Read Modify Write but the performance
2009 Feb 12
2
[PATCH 1/1] OCFS2: add IO error check in ocfs2_get_sector() -v2
...============================================ --- fs/ocfs2/super.c (revision 128) +++ fs/ocfs2/super.c (working copy) @@ -1203,6 +1203,12 @@ static int ocfs2_get_sector(struct super unlock_buffer(*bh); ll_rw_block(READ, 1, bh); wait_on_buffer(*bh); + if (!buffer_uptodate(*bh)) { + mlog_errno(-EIO); + brelse(*bh); + return -EIO; + } + return 0; }
2012 Apr 22
2
[RFC PATCH 5/5] drm/nouveau: gpu lockup recovery
Overall idea: Detect lockups by watching for timeouts (vm flush / fence), return -EIOs, handle them at ioctl level, reset the GPU and repeat last ioctl. GPU reset is done by doing suspend / resume cycle with few tweaks: - CPU-only bo eviction - ignoring vm flush / fence timeouts - shortening waits Signed-off-by: Marcin Slusarz <marcin.slusarz at gmail.com> --- Tested only on...
2018 Jul 28
3
[PATCH] file: Normalize errno value for ENODEV
...+ if (r == -1 && errno != EOPNOTSUPP) { nbdkit_error ("zero: %m"); } #else @@ -288,11 +303,11 @@ file_trim (void *handle, uint32_t count, uint64_t offset) struct handle *h = handle; /* Trim is advisory; we don't care if it fails for anything other - * than EIO, EPERM, or ENODEV (kernel 3.10) */ - r = fallocate (h->fd, FALLOC_FL_PUNCH_HOLE | FALLOC_FL_KEEP_SIZE, - offset, count); + * than EIO or EPERM. */ + r = do_fallocate (h->fd, FALLOC_FL_PUNCH_HOLE | FALLOC_FL_KEEP_SIZE, + offset, count); if (r < 0) {...