lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1308820378.27256.2773.camel@groo>
Date:	Thu, 23 Jun 2011 12:12:58 +0300
From:	Carlos Chinea <carlos.chinea@...ia.com>
To:	ext Sjur Brændeland 
	<sjur.brandeland@...ricsson.com>
Cc:	sjurbren@...il.com, Andras Domokos <andras.domokos@...ia.com>,
	Alan Cox <alan@...rguk.ukuu.org.uk>,
	linux-omap@...r.kernel.org, linux-kernel@...r.kernel.org,
	Linus Walleij <linus.walleij@...aro.org>
Subject: Re: [RFC PATCHv5 4/7] HSI: hsi_char: Add HSI char device driver

Hi,

On Wed, 2011-06-22 at 21:37 +0200, ext Sjur Brændeland wrote:
> Hi Carlos,
> 
> ...
> >+static ssize_t hsc_read(struct file *file, char __user *buf, size_t len,
> >+						loff_t *ppos __maybe_unused)
> >+{
> ...
> >+	ret = hsi_async_read(channel->cl, msg);
> >+
> >+	ret = wait_event_interruptible(channel->rx_wait,
> >+					!list_empty(&channel->rx_msgs_queue));
> ...
> 
> >+}
> >+
> >+static ssize_t hsc_write(struct file *file, const char __user *buf, size_t len,
> >+						loff_t *ppos __maybe_unused)
> >+{
> >+	ret = hsi_async_write(channel->cl, msg);
> >+	if (ret < 0)
> >+		goto out;
> >+
> >+	ret = wait_event_interruptible(channel->tx_wait,
> >+					!list_empty(&channel->tx_msgs_queue));
> 
> I would really like to see support for non-blocking read/write operation here.
> 

Non-blocking support will not be supported in hsi_char.

> ...
> >+
> >+static const struct file_operations hsc_fops = {
> >+	.owner		= THIS_MODULE,
> >+	.read		= hsc_read,
> >+	.write		= hsc_write,
> >+	.unlocked_ioctl	= hsc_ioctl,
> >+	.open		= hsc_open,
> >+	.release	= hsc_release,
> >+};
> 
> No poll?

We did have some "kind" of support for poll in previous versions, but we
did not honor properly the poll expected behavior, as we always need to
"block" waiting for the complete callback to be called. At least for
reads this was an issue.

However to compensate this, we are planning to add AIO support in the
future, which maps a lot better into the hsi behavior.

> Currently we do bulk read/write operations upon modem-crash or firmware upload,
> and would perfeer to be able do asynchronous IO (select/poll) in order to
> receive other system events or timeouts during HSI bulk transfers.
> 


Br,
-- 
Carlos Chinea <carlos.chinea@...ia.com>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ