xref: /spdk/examples/interrupt_tgt/interrupt_plugin.py (revision 588dfe314bb83d86effdf67ec42837b11c2620bf)
1*588dfe31SMichal Berger#  SPDX-License-Identifier: BSD-3-Clause
2*588dfe31SMichal Berger#  Copyright (C) 2021 Intel Corporation.
3*588dfe31SMichal Berger#  All rights reserved.
4*588dfe31SMichal Berger
57610bc38SKonrad Sztyberfrom spdk.rpc.client import print_json
674db63dcSLiu Xiaodong
774db63dcSLiu Xiaodong
874db63dcSLiu Xiaodongdef reactor_set_interrupt_mode(args):
974db63dcSLiu Xiaodong    params = {'lcore': args.lcore, 'disable_interrupt': args.disable_interrupt}
1074db63dcSLiu Xiaodong    return args.client.call('reactor_set_interrupt_mode', params)
1174db63dcSLiu Xiaodong
1274db63dcSLiu Xiaodong
1374db63dcSLiu Xiaodongdef spdk_rpc_plugin_initialize(subparsers):
1474db63dcSLiu Xiaodong    p = subparsers.add_parser('reactor_set_interrupt_mode',
1574db63dcSLiu Xiaodong                              help="""Set reactor to interrupt or back to poll mode.""")
1674db63dcSLiu Xiaodong    p.add_argument('lcore', type=int, help='lcore of the reactor')
1774db63dcSLiu Xiaodong    p.add_argument('-d', '--disable-interrupt', dest='disable_interrupt', action='store_true',
1874db63dcSLiu Xiaodong                   help='Set reactor back to poll mode')
1974db63dcSLiu Xiaodong    p.set_defaults(func=reactor_set_interrupt_mode)
20