On Mon, Aug 12, 2019 at 2:45 PM Ivan Khoronzhuk <ivan.khoronzhuk@xxxxxxxxxx> wrote: > > The AF_XDP sockets umem mapping interface uses XDP_UMEM_PGOFF_FILL_RING > and XDP_UMEM_PGOFF_COMPLETION_RING offsets. The offsets seems like are > established already and are part of configuration interface. > > But for 32-bit systems, while AF_XDP socket configuration, the values > are to large to pass maximum allowed file size verification. > The offsets can be tuned ofc, but instead of changing existent > interface - extend max allowed file size for sockets. Can you use mmap2() instead that takes a larger offset (2^44) even on 32-bit systems? /Magnus > Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@xxxxxxxxxx> > --- > > Based on bpf-next/master > > v2..v1: > removed not necessarily #ifdev as ULL and UL for 64 has same size > > mm/mmap.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/mm/mmap.c b/mm/mmap.c > index 7e8c3e8ae75f..578f52812361 100644 > --- a/mm/mmap.c > +++ b/mm/mmap.c > @@ -1358,6 +1358,9 @@ static inline u64 file_mmap_size_max(struct file *file, struct inode *inode) > if (S_ISBLK(inode->i_mode)) > return MAX_LFS_FILESIZE; > > + if (S_ISSOCK(inode->i_mode)) > + return MAX_LFS_FILESIZE; > + > /* Special "we do even unsigned file positions" case */ > if (file->f_mode & FMODE_UNSIGNED_OFFSET) > return 0; > -- > 2.17.1 >