Maximum Possible Items Available

I’m trying to write a block that take in input NL samples, where N and
L are two parameters, and give in output N
L samples.

The block is derived from gr_sync_block, and I’ve override the forecest
method as follow:

myblock_eig_max_cf::forecast (int noutput_items,
gr_vector_int &ninput_items_required)
unsigned ninputs = ninput_items_required.size ();
for (unsigned i = 0; i < ninputs; i++)
ninput_items_required[i] = d_L * d_N; // numero minimo di item in
ingresso per chiamare la funzione work

Everything is ok when N*L is less than 8191, but if the number of input
items is bigger (for example N=5000 L=2) I get the follow error:

sched: <gr_block eig_max_cf (2)> is requesting more input data
than we can provide.
ninput_items_required = 10000
max_possible_items_available = 8191
If this is a filter, consider reducing the number of taps.

Can someone help me ? How can I solve my problem ?