All of lore.kernel.org
 help / color / mirror / Atom feed
From: Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org>
To: dietmar.schindler@domain.hid
Cc: xenomai@xenomai.org
Subject: Re: [Xenomai-help] message pipe message boundaries
Date: Thu, 05 May 2011 10:14:33 +0200	[thread overview]
Message-ID: <4DC25C69.5020001@domain.hid> (raw)
In-Reply-To: <1183078C0D064042B3AD2D03E3859EF174EA21@domain.hid>

On 05/04/2011 04:34 PM, dietmar.schindler@domain.hid wrote:
>> From: Gilles Chanteperdrix
>> [mailto:gilles.chanteperdrix@xenomai.org] Sent: Wednesday, May 04,
>> 2011 8:41 AM
>> 
>> What I suggest, is that you make a patch which removes the read 
>> implementation and adds the readv implementation. In this case,
>> the kernel will use readv to implement read anyway, and there will
>> be no code duplication.
> 
> Thank you for the clarification. However, in the (still used by us)
> Linux 2.4.25 kernel's function
> 
> asmlinkage ssize_t sys_read(unsigned int fd, char * buf, size_t
> count) { ssize_t ret; struct file * file;
> 
> ret = -EBADF; file = fget(fd); if (file) { if (file->f_mode &
> FMODE_READ) { ret = locks_verify_area(FLOCK_VERIFY_READ,
> file->f_dentry->d_inode, file, file->f_pos, count); if (!ret) { 
> ssize_t (*read)(struct file *, char *, size_t, loff_t *); ret =
> -EINVAL; if (file->f_op && (read = file->f_op->read) != NULL) ret =
> read(file, buf, count, &file->f_pos); } } if (ret > 0) 
> dnotify_parent(file->f_dentry, DN_ACCESS); fput(file); } return ret; 
> }
> 
> it doesn’t look like it would use readv to implement read, so I'm
> afraid that your otherwise good suggestion would not work with such
> old kernel versions.

Hi,

You can provide the readv implementation, and implement read in terms of
readv by passing an iovec with just one buffer. Please also try and make
the code a bit more readable than in the previous patch, with only one
statement and one "if" by line.

Thanks in advance.

-- 
					    Gilles.



  reply	other threads:[~2011-05-05  8:14 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-04-26  9:48 [Xenomai-help] message pipe message boundaries dietmar.schindler
2011-04-26 20:27 ` Philippe Gerum
2011-04-27  8:50   ` dietmar.schindler
2011-04-27 12:22     ` dietmar.schindler
2011-04-27 21:42       ` Philippe Gerum
2011-04-29  6:30         ` dietmar.schindler
2011-05-03  8:15           ` dietmar.schindler
2011-05-03 11:00             ` Gilles Chanteperdrix
2011-05-03 11:27               ` dietmar.schindler
2011-05-03 17:35                 ` Gilles Chanteperdrix
2011-05-04  6:36                   ` dietmar.schindler
2011-05-04  6:40                     ` Gilles Chanteperdrix
2011-05-04 14:34                       ` dietmar.schindler
2011-05-05  8:14                         ` Gilles Chanteperdrix [this message]
2011-05-09  7:36                           ` dietmar.schindler
2011-05-11  9:12                             ` Gilles Chanteperdrix
2011-05-11  9:20                               ` Philippe Gerum
2011-05-11 10:48                                 ` dietmar.schindler
2011-05-11 10:55                                   ` Gilles Chanteperdrix
2011-05-11 11:02                                   ` Philippe Gerum
2011-05-19 13:09                               ` dietmar.schindler

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4DC25C69.5020001@domain.hid \
    --to=gilles.chanteperdrix@xenomai.org \
    --cc=dietmar.schindler@domain.hid \
    --cc=xenomai@xenomai.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.