diff options
Diffstat (limited to 'results/scraper/launchpad-without-comments/1906295')
| -rw-r--r-- | results/scraper/launchpad-without-comments/1906295 | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/results/scraper/launchpad-without-comments/1906295 b/results/scraper/launchpad-without-comments/1906295 new file mode 100644 index 000000000..3b9005af5 --- /dev/null +++ b/results/scraper/launchpad-without-comments/1906295 @@ -0,0 +1,11 @@ +Implementation of exclusive monitor in ARM + +Hi + +I refer to the implementation of exclusive monitor in ARM32. For instruction like STREX Rx,Ry,[Rz], we need to check whether the address [Rz] is in exclusive state. If not, we set the value Rx as 1 without doing the store operation. However, I noticed that QEMU will not check whether the address that Rz points to is a legal address or not. If the value of Rz is 0x0 but it is not in exclusive state. QEMU will set Rx as 1 and continue to execute the following instructions. + +However, physical devices will check the value of Rz. If Rz is an illegal address (e.g., 0x0), a SIGSEGV signal will be raised even the address is not in exclusive state. I searched many documentation about ARM and it seems that manual of ARM specification does not specify the implementation of exclusive monitor in detail. I am not sure which one is the right behavior. +Should QEMU add this check? This might not be a mistake. However, should it be better if QEMU has the same behavior as a physical device? Feel free if you need a testcase. Many thanks + +Regards +Muhui \ No newline at end of file |