/* This routine will send a VM_CloseAll (shutdown) request to the adapter.  */
int aac_send_shutdown(struct aac_dev *dev)
/* This routine will send a VM_CloseAll (shutdown) request to the adapter.  */
int aac_send_shutdown(struct aac_dev *dev)
{
	struct fib * fibctx;
	struct aac_close *cmd;
	int status;
	fibctx = aac_fib_alloc(dev);
	if (!fibctx)
		return -ENOMEM;
	aac_fib_init(fibctx);
	cmd = (struct aac_close *) fib_data(fibctx);
	cmd->command = cpu_to_le32(VM_CloseAll);
	cmd->cid = cpu_to_le32(0xffffffff);
	status = aac_fib_send(ContainerCommand,
			  fibctx,
			  sizeof(struct aac_close),
			  FsaNormal,
			  -2, 1,
			  NULL, NULL);
	if (status >= 0)
		aac_fib_complete(fibctx);
	if (status != -ERESTARTSYS)
		aac_fib_free(fibctx);
	return status;
}