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: <20180811024553.GF6515@ZenIV.linux.org.uk>
Date:   Sat, 11 Aug 2018 03:45:53 +0100
From:   Al Viro <viro@...IV.linux.org.uk>
To:     Richard Henderson <rth@...ddle.net>
Cc:     Firoz Khan <firoz.khan@...aro.org>, linux-alpha@...r.kernel.org,
        ink@...assic.park.msu.ru, mattst88@...il.com,
        y2038@...ts.linaro.org, linux-kernel@...r.kernel.org,
        linux-arch@...r.kernel.org, arnd@...db.de, deepa.kernel@...il.com
Subject: Re: [PATCH 3/6] alpha: Unify the not-implemented system call entry
 name

On Fri, Aug 10, 2018 at 07:31:55PM -0700, Richard Henderson wrote:

> > +++ b/arch/alpha/kernel/entry.S
> > @@ -473,7 +473,7 @@ entSys:
> >  	bne     $3, strace
> >  	beq	$4, 1f
> >  	ldq	$27, 0($5)
> > -1:	jsr	$26, ($27), alpha_ni_syscall
> > +1:	jsr	$26, ($27), sys_ni_syscall
> >  	ldgp	$gp, 0($26)
> >  	blt	$0, $syscall_error	/* the call failed */
> >  	stq	$0, 0($sp)
> 
> Once upon a time I had a patch to make the hint
> be sys_gettimeofday, as the most common syscall.
> Dunno what happened to that.

Might as well... ptraced case has it, non-ptraced doesn't.

BTW, seeing that it's your code - why was unop used in
alpha_ni_syscall?  I don't remember the rules re pipeline
stalls; is it that some earlier variants prefer unop to
nop in such places?  It's not that microoptimizing that
one makes any difference, but just out of curiosity -
would something like
	lda     $0, -ENOSYS
	stq     $sp, 0($sp)	/* sp != 0 */
	ret
do just as well there?

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ