Commit 62f659e0 authored by Sukadev Bhattiprolu's avatar Sukadev Bhattiprolu Committed by Michael Ellerman

powerpc/vas: Save configured window credits

Save the configured max window credits for a window in the vas_window
structure. We will need this when polling for return of window credits.
Signed-off-by: default avatarSukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>
Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
parent dfe954e4
...@@ -674,7 +674,7 @@ static void init_winctx_for_rxwin(struct vas_window *rxwin, ...@@ -674,7 +674,7 @@ static void init_winctx_for_rxwin(struct vas_window *rxwin,
winctx->rx_fifo = rxattr->rx_fifo; winctx->rx_fifo = rxattr->rx_fifo;
winctx->rx_fifo_size = rxattr->rx_fifo_size; winctx->rx_fifo_size = rxattr->rx_fifo_size;
winctx->wcreds_max = rxattr->wcreds_max ?: VAS_WCREDS_DEFAULT; winctx->wcreds_max = rxwin->wcreds_max;
winctx->pin_win = rxattr->pin_win; winctx->pin_win = rxattr->pin_win;
winctx->nx_win = rxattr->nx_win; winctx->nx_win = rxattr->nx_win;
...@@ -844,6 +844,7 @@ struct vas_window *vas_rx_win_open(int vasid, enum vas_cop_type cop, ...@@ -844,6 +844,7 @@ struct vas_window *vas_rx_win_open(int vasid, enum vas_cop_type cop,
rxwin->nx_win = rxattr->nx_win; rxwin->nx_win = rxattr->nx_win;
rxwin->user_win = rxattr->user_win; rxwin->user_win = rxattr->user_win;
rxwin->cop = cop; rxwin->cop = cop;
rxwin->wcreds_max = rxattr->wcreds_max ?: VAS_WCREDS_DEFAULT;
if (rxattr->user_win) if (rxattr->user_win)
rxwin->pid = task_pid_vnr(current); rxwin->pid = task_pid_vnr(current);
...@@ -893,7 +894,7 @@ static void init_winctx_for_txwin(struct vas_window *txwin, ...@@ -893,7 +894,7 @@ static void init_winctx_for_txwin(struct vas_window *txwin,
*/ */
memset(winctx, 0, sizeof(struct vas_winctx)); memset(winctx, 0, sizeof(struct vas_winctx));
winctx->wcreds_max = txattr->wcreds_max ?: VAS_WCREDS_DEFAULT; winctx->wcreds_max = txwin->wcreds_max;
winctx->user_win = txattr->user_win; winctx->user_win = txattr->user_win;
winctx->nx_win = txwin->rxwin->nx_win; winctx->nx_win = txwin->rxwin->nx_win;
...@@ -978,6 +979,7 @@ struct vas_window *vas_tx_win_open(int vasid, enum vas_cop_type cop, ...@@ -978,6 +979,7 @@ struct vas_window *vas_tx_win_open(int vasid, enum vas_cop_type cop,
txwin->nx_win = txwin->rxwin->nx_win; txwin->nx_win = txwin->rxwin->nx_win;
txwin->pid = attr->pid; txwin->pid = attr->pid;
txwin->user_win = attr->user_win; txwin->user_win = attr->user_win;
txwin->wcreds_max = attr->wcreds_max ?: VAS_WCREDS_DEFAULT;
init_winctx_for_txwin(txwin, attr, &winctx); init_winctx_for_txwin(txwin, attr, &winctx);
......
...@@ -332,6 +332,7 @@ struct vas_window { ...@@ -332,6 +332,7 @@ struct vas_window {
void *hvwc_map; /* HV window context */ void *hvwc_map; /* HV window context */
void *uwc_map; /* OS/User window context */ void *uwc_map; /* OS/User window context */
pid_t pid; /* Linux process id of owner */ pid_t pid; /* Linux process id of owner */
int wcreds_max; /* Window credits */
/* Fields applicable only to send windows */ /* Fields applicable only to send windows */
void *paste_kaddr; void *paste_kaddr;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment