Skip to content

Commit 5233077

Browse files
committedApr 9, 2018
v11.4: fix compatibility issue introduced by 142ebbf
1 parent 227fc31 commit 5233077

File tree

4 files changed

+13
-5
lines changed

4 files changed

+13
-5
lines changed
 

‎apps/pkt-gen/pkt-gen.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -2965,7 +2965,7 @@ main(int arc, char **argv)
29652965
goto out;
29662966
}
29672967
g.main_fd = g.nmd->fd;
2968-
D("mapped %luKB at %p", g.nmd->req.nr_memsize>>10, g.nmd->mem);
2968+
D("mapped %uKB at %p", g.nmd->req.nr_memsize>>10, g.nmd->mem);
29692969

29702970
if (g.virt_header) {
29712971
/* Set the virtio-net header length, since the user asked

‎sys/dev/netmap/netmap.c

+6-2
Original file line numberDiff line numberDiff line change
@@ -2294,6 +2294,7 @@ netmap_ioctl(struct netmap_priv_d *priv, u_long cmd, caddr_t data, struct thread
22942294
do {
22952295
/* memsize is always valid */
22962296
u_int memflags;
2297+
uint64_t memsize;
22972298

22982299
if (nmr->nr_name[0] != '\0') {
22992300

@@ -2313,10 +2314,11 @@ netmap_ioctl(struct netmap_priv_d *priv, u_long cmd, caddr_t data, struct thread
23132314
}
23142315
}
23152316

2316-
error = netmap_mem_get_info(nmd, &nmr->nr_memsize, &memflags,
2317+
error = netmap_mem_get_info(nmd, &memsize, &memflags,
23172318
&nmr->nr_arg2);
23182319
if (error)
23192320
break;
2321+
nmr->nr_memsize = (uint32_t)memsize;
23202322
if (na == NULL) /* only memory info */
23212323
break;
23222324
nmr->nr_offset = 0;
@@ -2395,6 +2397,7 @@ netmap_ioctl(struct netmap_priv_d *priv, u_long cmd, caddr_t data, struct thread
23952397
NMG_LOCK();
23962398
do {
23972399
u_int memflags;
2400+
uint64_t memsize;
23982401

23992402
if (priv->np_nifp != NULL) { /* thread already registered */
24002403
error = EBUSY;
@@ -2436,12 +2439,13 @@ netmap_ioctl(struct netmap_priv_d *priv, u_long cmd, caddr_t data, struct thread
24362439
nmr->nr_tx_rings = na->num_tx_rings;
24372440
nmr->nr_rx_slots = na->num_rx_desc;
24382441
nmr->nr_tx_slots = na->num_tx_desc;
2439-
error = netmap_mem_get_info(na->nm_mem, &nmr->nr_memsize, &memflags,
2442+
error = netmap_mem_get_info(na->nm_mem, &memsize, &memflags,
24402443
&nmr->nr_arg2);
24412444
if (error) {
24422445
netmap_do_unregif(priv);
24432446
break;
24442447
}
2448+
nmr->nr_memsize = (uint32_t)memsize;
24452449
if (memflags & NETMAP_MEM_PRIVATE) {
24462450
*(uint32_t *)(uintptr_t)&nifp->ni_flags |= NI_PRIV_MEM;
24472451
}

‎sys/dev/netmap/netmap_vale.c

+5-1
Original file line numberDiff line numberDiff line change
@@ -611,11 +611,15 @@ nm_vi_destroy(const char *name)
611611
static int
612612
nm_update_info(struct nmreq *nmr, struct netmap_adapter *na)
613613
{
614+
uint64_t memsize;
615+
int ret;
614616
nmr->nr_rx_rings = na->num_rx_rings;
615617
nmr->nr_tx_rings = na->num_tx_rings;
616618
nmr->nr_rx_slots = na->num_rx_desc;
617619
nmr->nr_tx_slots = na->num_tx_desc;
618-
return netmap_mem_get_info(na->nm_mem, &nmr->nr_memsize, NULL, &nmr->nr_arg2);
620+
ret = netmap_mem_get_info(na->nm_mem, &memsize, NULL, &nmr->nr_arg2);
621+
nmr->nr_memsize = (uint32_t)memsize;
622+
return ret;
619623
}
620624

621625
/*

‎sys/net/netmap.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -496,7 +496,7 @@ struct nmreq {
496496
char nr_name[IFNAMSIZ];
497497
uint32_t nr_version; /* API version */
498498
uint32_t nr_offset; /* nifp offset in the shared region */
499-
uint64_t nr_memsize; /* size of the shared region */
499+
uint32_t nr_memsize; /* size of the shared region */
500500
uint32_t nr_tx_slots; /* slots in tx rings */
501501
uint32_t nr_rx_slots; /* slots in rx rings */
502502
uint16_t nr_tx_rings; /* number of tx rings */

0 commit comments

Comments
 (0)
Failed to load comments.