lkml.org 
[lkml]   [2000]   [Jan]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: (*(unsigned long *)&jiffies)++;
Hi Petko,

On Fri, 7 Jan 2000, Petko Manolov wrote:
> AFAIK incl _lock_ the bus even without "lock" in fornt of the
> instruction
> on 386 machine. Or at least i386 instruction set manual say so.
> But there is no word about all this in the newest manual i got from
> Intel. Is this changed on i[56]86?

The section 7.1.2.1 (of Intel PIII, Volume III) says that automatic
LOCK-ing is done:

* When executing an XCHG instruction that references memory.

* When setting the B (busy) flag of a TSS descriptor.

* When updating segment descriptors.

* When updating page-directory and page-table entries.

* Acknowledging interrupts.

so, inc is *not* one of them. On the next page it mentions cases when LOCK
prefix can be used (all other cases will generate invalid opcode exception):

* The bit test and modify instructions (BTS, BTR, and BTC).

* The exchange instructions (XADD, CMPXCHG, and CMPXCHG8B).

* The LOCK prefix is automatically assumed for XCHG instruction.

* The following single-operand arithmetic and logical instructions:
INC, DEC, NOT, and NEG.

* The following two-operand arithmetic and logical instructions: ADD,
ADC, SUB, SBB, AND, OR, and XOR.

I know we all can read and cut'n'paste but sometimes it is nice to find
useful facts in a signle email message :)

Regards,
------
Tigran A. Aivazian | http://www.sco.com
Escalations Research Group | tel: +44-(0)1923-813796
Santa Cruz Operation Ltd | http://www.ocston.org/~tigran


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

\
 
 \ /
  Last update: 2005-03-22 13:55    [W:0.210 / U:0.548 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site