aboutsummaryrefslogtreecommitdiff
path: root/libpager
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2023-02-02 00:37:00 +0100
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2023-02-02 00:37:00 +0100
commit0cc80b3913489e74f6d5a0ac9b8a4c5523d9cecd (patch)
tree162fe5f68fbf68498deb46482b5b5c3f2cb05261 /libpager
parentd21b09b328956996466f35a45b28c4ab51f1f4e3 (diff)
downloadhurd-0cc80b3913489e74f6d5a0ac9b8a4c5523d9cecd.tar.gz
hurd-0cc80b3913489e74f6d5a0ac9b8a4c5523d9cecd.tar.bz2
hurd-0cc80b3913489e74f6d5a0ac9b8a4c5523d9cecd.zip
Avoid undefined-behavior
1 << 31 is undefined behavior, 1 needs to be made unsigned for << 31 to be defined behavior.
Diffstat (limited to 'libpager')
-rw-r--r--libpager/data-return.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/libpager/data-return.c b/libpager/data-return.c
index 52661812..a69a2c5c 100644
--- a/libpager/data-return.c
+++ b/libpager/data-return.c
@@ -43,7 +43,7 @@ _pager_do_write_request (struct pager *p,
struct lock_list {struct lock_request *lr;
struct lock_list *next;} *lock_list, *ll;
int wakeup;
- int omitdata = 0;
+ unsigned omitdata = 0;
if (!p
|| p->port.class != _pager_class)
@@ -125,11 +125,11 @@ _pager_do_write_request (struct pager *p,
/* Mark these pages as being paged out. */
if (initializing)
{
- assert_backtrace (npages <= 32);
+ assert_backtrace (npages < 32);
for (i = 0; i < npages; i++)
{
if (pm_entries[i] & PM_INIT)
- omitdata |= 1 << i;
+ omitdata |= 1U << i;
else
pm_entries[i] |= PM_PAGINGOUT | PM_INIT;
}
@@ -162,7 +162,7 @@ _pager_do_write_request (struct pager *p,
but until the pager library interface is changed, this will have to do. */
for (i = 0; i < npages; i++)
- if (!(omitdata & (1 << i)))
+ if (!(omitdata & (1U << i)))
pagerrs[i] = pager_write_page (p->upi,
offset + (vm_page_size * i),
data + (vm_page_size * i));
@@ -175,7 +175,7 @@ _pager_do_write_request (struct pager *p,
wakeup = 0;
for (i = 0; i < npages; i++)
{
- if (omitdata & (1 << i))
+ if (omitdata & (1U << i))
{
notified[i] = 0;
continue;