Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 19 May 2016 12:22:12 +0000
From:      KrishnamRaju ErapaRaju <Krishna2@chelsio.com>
To:        Hans Petter Selasky <hps@selasky.org>, "freebsd-infiniband@freebsd.org" <freebsd-infiniband@freebsd.org>
Subject:   RE: write() system call(via rdma_get_cm_event) is not honoring a signal with flag SA_RESTART.
Message-ID:  <4EAB2619577FCA4EBCE11F17B7373447C431372B@nice.asicdesigners.com>
In-Reply-To: <3500e324-7d7c-ed94-5913-911fd9877bef@selasky.org>
References:  <4EAB2619577FCA4EBCE11F17B7373447C4313548@nice.asicdesigners.com> <3500e324-7d7c-ed94-5913-911fd9877bef@selasky.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Hans,

I think it's not a regression.

To verify it I have fetched the latest sources(both FreeBSD & OFED 3.2) and=
 started building...
 Between, may I know when will OFED 3.2 patches be pushed to upstream?

Also, before started building,  I'd quickly replaced -ERESTARTSYS with -512=
 in ucma_get_event, I still don't see the write() system call getting resta=
rted.

Here are the return codes:
ucma_get_event, returns -512
rdma_get_cm_event, returns -1, errorno: 512

So can FreeBSD understand the interrupted system call return value(-512) li=
ke Linux?

Thanks,
Krishna.

-----Original Message-----
From: Hans Petter Selasky [mailto:hps@selasky.org]=20
Sent: Wednesday, May 18, 2016 7:59 PM
To: KrishnamRaju ErapaRaju <Krishna2@chelsio.com>; freebsd-infiniband@freeb=
sd.org
Cc: Navdeep Parhar <navdeep@chelsio.com>; Steve Wise <swise@chelsio.com>
Subject: Re: write() system call(via rdma_get_cm_event) is not honoring a s=
ignal with flag SA_RESTART.

On 05/18/16 16:12, KrishnamRaju ErapaRaju wrote:
> As rdma_get_cm_event() calls ucma_get_event() via write system call, this=
 system call may be blocked at wait_event_interruptible() until it gets an =
event or until it gets a signal interrupt.

Hi,

Is this a regression issue?

ERESTARTSYS was previously defined incorrectly like a negative error code. =
This was fixed in:

https://svnweb.freebsd.org/changeset/base/299641

Was your testing done with r299641 ? Can you check the error code you get i=
n userspace?

--HPS



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4EAB2619577FCA4EBCE11F17B7373447C431372B>