diff mbox series

libceph: bump CEPH_MSG_MAX_DATA_LEN

Message ID 20181011135722.15246-1-idryomov@gmail.com (mailing list archive)
State New, archived
Headers show
Series libceph: bump CEPH_MSG_MAX_DATA_LEN | expand

Commit Message

Ilya Dryomov Oct. 11, 2018, 1:57 p.m. UTC
If the read is large enough, we end up spinning in the messenger:

  libceph: osd0 192.168.122.1:6801 io error
  libceph: osd0 192.168.122.1:6801 io error
  libceph: osd0 192.168.122.1:6801 io error

This is a receive side limit, so only reads were affected.

Cc: stable@vger.kernel.org
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
---
 include/linux/ceph/libceph.h | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

Comments

Jason Dillaman Oct. 11, 2018, 2:23 p.m. UTC | #1
On Thu, Oct 11, 2018 at 9:58 AM Ilya Dryomov <idryomov@gmail.com> wrote:
>
> If the read is large enough, we end up spinning in the messenger:
>
>   libceph: osd0 192.168.122.1:6801 io error
>   libceph: osd0 192.168.122.1:6801 io error
>   libceph: osd0 192.168.122.1:6801 io error
>
> This is a receive side limit, so only reads were affected.
>
> Cc: stable@vger.kernel.org
> Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
> ---
>  include/linux/ceph/libceph.h | 8 +++++++-
>  1 file changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/include/linux/ceph/libceph.h b/include/linux/ceph/libceph.h
> index 49c93b9308d7..68bb09c29ce8 100644
> --- a/include/linux/ceph/libceph.h
> +++ b/include/linux/ceph/libceph.h
> @@ -81,7 +81,13 @@ struct ceph_options {
>
>  #define CEPH_MSG_MAX_FRONT_LEN (16*1024*1024)
>  #define CEPH_MSG_MAX_MIDDLE_LEN        (16*1024*1024)
> -#define CEPH_MSG_MAX_DATA_LEN  (16*1024*1024)
> +
> +/*
> + * Handle the largest possible rbd object in one message.
> + * There is no limit on the size of cephfs objects, but it has to obey
> + * rsize and wsize mount options anyway.
> + */
> +#define CEPH_MSG_MAX_DATA_LEN  (32*1024*1024)
>
>  #define CEPH_AUTH_NAME_DEFAULT   "guest"
>
> --
> 2.14.4
>

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
diff mbox series

Patch

diff --git a/include/linux/ceph/libceph.h b/include/linux/ceph/libceph.h
index 49c93b9308d7..68bb09c29ce8 100644
--- a/include/linux/ceph/libceph.h
+++ b/include/linux/ceph/libceph.h
@@ -81,7 +81,13 @@  struct ceph_options {
 
 #define CEPH_MSG_MAX_FRONT_LEN	(16*1024*1024)
 #define CEPH_MSG_MAX_MIDDLE_LEN	(16*1024*1024)
-#define CEPH_MSG_MAX_DATA_LEN	(16*1024*1024)
+
+/*
+ * Handle the largest possible rbd object in one message.
+ * There is no limit on the size of cephfs objects, but it has to obey
+ * rsize and wsize mount options anyway.
+ */
+#define CEPH_MSG_MAX_DATA_LEN	(32*1024*1024)
 
 #define CEPH_AUTH_NAME_DEFAULT   "guest"